package gateway

// Middleware 包裹入站处理函数，可实现鉴权/限流/日志等
type Middleware func(HandlerFunc) HandlerFunc

// Chain 以注册顺序包裹处理函数（后注册的在外层）
func Chain(h HandlerFunc, mws ...Middleware) HandlerFunc {
	for i := len(mws) - 1; i >= 0; i-- {
		h = mws[i](h)
	}
	return h
}
